package com.joker.aigc.tools.service.video;

import com.joker.aigc.tools.domian.dto.CategoryAddDTO;
import com.joker.aigc.tools.domian.dto.CategoryDTO;
import com.joker.aigc.tools.domian.po.ActorsPO;

import java.util.List;

/**
 * 分类服务接口
 *
 * @author system
 * @date 2023-12-01
 */
public interface CategoryService {

    /**
     * 获取所有分类
     *
     * @return 分类列表
     */
    List<CategoryDTO> getAllCategories();

    /**
     * 根据类型获取分类
     *
     * @param categoryType 分类类型 (genre/region/actor)
     * @return 分类列表
     */
    List<CategoryDTO> getCategoriesByType(String categoryType);

    /**
     * 获取子分类
     *
     * @param categoryId 分类ID
     * @return 子分类列表
     */
    List<CategoryDTO.SubCategoryDTO> getSubCategories(Long categoryId);

    /**
     * 获取演员
     *
     * @return 演员列表，如果为空，则返回所有演员
     */
    List<ActorsPO> getActors(String actorName);


    String addCategory(CategoryAddDTO categoryAddDTO);
} 